TrgPortLine 運算子

運算子庫:硬體平台

此運算子負責產生相機的觸發訊號(Exsync)。 此外,它還負責將擷取的線疊合成影像。

可以使用內建訊號產生器(GrabberControlled),或透過外部 訊號觸發該訊號產生器, 觸發方式可透過觸發擴充板(TTL Trigger 板或OPTO Trigger板)的輸入訊號,或透過軟體進行。 該訊號產生器可產生具有靈活延遲、脈衝寬度及極性的Exsync訊號。 此外,還會產生一個可在觸發擴充板上取得的閃光訊號。

該操作員佔用 4 個數位輸出端子及一個用於 CC 訊號的攝影機連接埠。 因此,會使用一個類型為CameraControl 的「VisualApplets 」資源。 若資源索引設定為 0,則會使用數位輸出端子 0 至 2 以及攝影機連接埠 A。 若將資源索引設定為 1,則會使用數位輸出 4 至 6 以及攝影機連接埠 B。 輸出 3 和 7 不會被此操作員使用。 請注意,其他操作員無法使用這些硬體資源。 請在資源對話方塊中設定資源索引。

適用於硬體平台
microEnable IV VD1-CL/-PoCL
microEnable IV VD4-CL/-PoCL

I/O Properties

Property Value
Operator Type P
Input Link I,資料輸入
Output Link O,資料輸出

Supported Link Format

Link Parameter Input Link I Output Link O
Bit Width [1, 64] as I
Arithmetic {unsigned, signed} as I
Parallelism any as I
Kernel Columns 1 as I
Kernel Rows 1 as I
Img Protocol VALT_LINE1D VALT_IMAGE2D
Color Format any as I
Color Flavor any as I
Max. Img Width any as I
Max. Img Height 65536 as I

Parameters

YOffset
Type 動態/靜態讀寫參數
Default 0
Range [0, 224]

此參數用以定義在幀開頭省略的行數。

YLength
Type 動態/靜態讀寫參數
Default 1024
Range [8, 224]

此參數用來定義一幀的行數。

MaxGatedHeight
Type dynamid 讀寫參數
Default 受限
Range {受限、不受限}

透過參數MaxGatedHeight,您可以在 影像觸發模式 (ImgTriggerMode) 設定為 ExternSw_Gate 時,限制影像的最大高度。

若影像觸發模式(ImgTriggerMode)設定為 ExternSw_Gate, 且參數MaxGatedHeight設定為「無限制」, 則影像高度由柵門開啟的時間決定,亦即 由外部影像觸發訊號的脈衝寬度,或軟體觸發值為 1 時的持續時間所決定。 此時,若閘門開啟時間較長,影像高度便會變大。 若將參數MaxGatedHeight設定為「受限」,則影像高度將限制在 YLength 條影像線內, 即使閘門仍處於開啟狀態亦然。 操作員將捨棄後續的所有影像線,並等待下一次閘門開啟以開始新幀。

相較之下,若將該參數設定為「無限制」,則影像高度僅由柵門決定。

[警告] 可能違反連結屬性

在無限制模式下使用此參數可能會導致違反VisualApplets 連結協定。 影像高度可能會超過 TrgPortLine 運算子輸出連結中定義的最大允許影像高度。 使用無限制模式時請務必謹慎。 有關連結屬性的更多資訊,請參閱「連結屬性」。

接續使用的 SplitImage 運算子可將大型影像分割成多個區塊(較小的影像)。

LineTriggerMode
Type 動態/靜態讀寫參數
Default GrabberControlled
Range {由擷取器控制、外部觸發、由擷取器控制且受影像觸發、外部觸發且受影像觸發}

此參數用於選取內部 Exsync 訊號產生器的運作模式。 外部觸發輸入的訊號來源可透過參數 LineTrgInSourceA 和 LineTrgInSourceB 進行選取(請參閱 下文)。

GrabberControlled:Exsync 由內部訊號產生器定期產生

Extern_Trigger:使用外部觸發訊號來啟動訊號產生器一次

GrabberControlled_Gated_by_Img:在擷取一幀影像期間,內部訊號產生器會定期產生 Exsync 訊號

Extern_Trigger_Gated_by_Img:在擷取一幀影像期間,會使用外部觸發訊號來觸發訊號產生器 。

ExsyncEnable
Type 動態讀取/寫入參數
Default OFF
Range {OFF, ON}

啟用或停用傳送至攝影機的 Exsync 輸出。

LineTrgInSourceA
Type 動態/靜態讀寫參數
Default InSignal0
Range {InSignal0、InSignal1、InSignal2、InSignal3、InSignal4、InSignal5、InSignal6、InSignal7}

此參數指定用於觸發 Exsync 訊號產生器的訊號來源。 此設定僅在 TriggerMode 設為 Extern_Trigger 時才適用。

LineTrgInSourceB
Type 動態/靜態讀寫參數
Default InSignal0
Range {InSignal0、InSignal1、InSignal2、InSignal3、InSignal4、InSignal5、InSignal6、InSignal7}

此參數指定用於觸發 Exsync 訊號產生器的訊號來源。 此設定僅在 TriggerMode 設定為 Extern_Trigger,且 EncoderABMode 設定為 Signal_AB_Filter 時才適用。

編碼器 A/B 模式
Type 動態/靜態讀寫參數
Default 僅_A_訊號
Range {僅 A 訊號、AB 訊號濾波器、ABx2 訊號濾波器、ABx4 訊號濾波器}

此參數用於指定 Exsync 的產生是僅使用單一觸發輸入(僅 A),還是同時使用 A 和 B 兩個訊號。

A/B 訊號支援功能可藉此判定轉軸編碼器的旋轉方向,並抑制及補償 反向移動:

Signal_A_Only:由 LineTrgInSourceA 選取的觸發輸入將用於產生 Exsync。

Signal_AB_Filter:當軸編碼器在單一解析度下正向旋轉時,會產生 Exsync,也就是說, 當 LineTrgInSourceA 的上升沿出現時,會產生一個觸發脈衝。

Signal_ABx2_Filter:當軸編碼器以雙倍解析度正向旋轉時,會產生 Exsync,也就是說, 當 LineTrgInSourceA 的上升沿和下降沿分別觸發時,會產生觸發脈衝。LineTrgInSourceA 的兩個沿 都會被使用。

Signal_ABx4_Filter:當軸編碼器以四倍解析度正向旋轉時,會產生 Exsync,也就是說, 當 LineTrgInSourceA 的上升沿和下降沿,以及 LineTrgInSourceB 的上升沿和下降沿出現時,會分別產生一個觸發脈衝。

啟用 AB 支援時相關的參數:

  • EncoderABLead(可切換「正向」的定義)

您可以將參數EncoderABMode設定為Signal_A_Only,藉此重置軸編碼器。

編碼器AB引腳
Type 動態/靜態讀寫參數
Default Signal_AB
Range {Signal_AB, Signal_BA}

若參數設定為 Signal_AB,則「向前移動」的定義為:在信號 B 之前,信號 A 出現上升沿; 反之亦然:

Signal_AB:正向由 A 在 B 之前所定義

Signal_BA:正向由 B 先於 A 所定義

LineTrgInPolarity
Type 動態讀取/寫入參數
Default 低活躍度
Range {低活躍度, 高活躍度}

此參數用於定義外部輸入觸發訊號 LineTrgInSourceA 和 LineTrgInSourceB 的極性。當設定 為 LowActive 時,Exsync 產生器將於參數 ImgTrgInSource 所指定的訊號的下降沿開始運作。否則, Exsync 產生將於上升沿開始運作。此設定僅在 TriggerMode 設定為 Extern_Trigger 時才適用。

LineTrgDownscaler
Type 動態/靜態讀寫參數
Default 1
Range [1, 256]

此參數指定產生 Exsync 所需的外部輸入觸發訊號數量。此 設定僅在 TriggerMode 設定為外部觸發模式時才適用。

LineTrgPhase
Type 動態/靜態讀寫參數
Default 1
Range [1, 256]

此參數指定產生一個幀中第一個 Exsync 所需的外部輸入觸發訊號數量。 此設定僅在 TriggerMode 設定為 Extern_Trigger_Gated_by_Img 時才適用。

ExsyncPeriod
Type 動態/靜態讀寫參數
Default 100 微秒
Range [1.024, 4000] 微秒

此參數指定 Exsync 訊號的週期。因此,當使用抓取器 控制模式觸發連接的攝影機時,此參數即定義了線路頻率。

ExsyncExposure
Type 動態/靜態讀寫參數
Default 20 微秒
Range [1.024, 2000] 微秒,不得超過 ExsyncPeriod

此參數用於指定 Exsync 訊號的脈衝寬度,許多相機可藉此設定曝光 時間。因此,即使在擷取畫面期間,仍可透過軟體調整曝光時間。

Exsync2Delay
Type 動態/靜態讀寫參數
Default 0 微秒
Range [0, 2000] 微秒,不得超過 ExsyncPeriod

此參數指定所產生之 Exsync 訊號相對於外部觸發輸入的延遲。因此, Exsync2 訊號是 Exsync 的延遲複本(極性、週期等皆與 Exsync 相同)。

ExsyncPolarity
Type 動態/靜態讀寫參數
Default 低活躍度
Range {低活躍度, 高活躍度}

此參數用於將 Exsync 訊號產生器的極性調整為連接的相機所能接受的極性。若相機是在下降沿時開啟快門,請使用 LowActive;否則請使用 HighActive。

ImgTriggerMode
Type 動態/靜態讀寫參數
Default FreeRun
Range {FreeRun、ExternSw_Trigger、ExternSw_Gate}

此參數用於選取內部影像閘(Image Gate)的運作模式。

影像觸發輸入訊號可由外部(周邊)裝置(例如:轉軸編碼器)產生,或由軟體產生。 您可以透過參數ImgTrgInSource 選擇外部影像觸發輸入的來源(詳見下文)。

參數 ImgTriggerMode 的取值會引發以下行為:

  • FreeRun:

    • 相機傳送的所有傳入線路均會被接受。

    • 「影像閘門」將被忽略。

    • 參數YLength定義了何時產生幀結束 (EOF)。

    • 若參數yOffset大於零, 則會省略兩張連續影像之間 yOffset 行數的影像。

      範例:yOffset= 0,YLength= 2:

      範例:yOffset=2,YLength= 2:

  • ExternSw_Trigger:

    • 在接收到有效影像觸發輸入訊號的上升沿時, 將開始處理新幀,並將傳入的行資料追加至現有影像中,直至達到YLength 為止。

    • 參數YLength定義了何時產生幀結束 (EOF)。

    • 只有在已追加YLength行且產生 EOF 之後,才會接受影像觸發器的下一個上升沿。 若在已向影像追加YLength行 且產生 EOF 之前出現影像觸發器的下一個上升沿,則該上升沿將被忽略。

      範例:將YLength設定為 值 2:

  • ExternSw_Gate:

    • 在閘控模式下,影像觸發輸入訊號的活躍時間長短至關重要, 因為它充當「影像閘控」訊號。

    • 此模式的確切行為可透過參數MaxGatedHeight 來定義。 (透過MaxGatedHeight,您可以設定影像的最大高度是否受限或不受限。 詳情請參閱參數MaxGatedHeight 的說明。)

      當參數MaxGatedHeight設定為「無限制」時,模式 ExternSW_Gate 的行為

      • 當「影像閘」訊號處於有效狀態時,傳入的行會被追加到影像中。

      • 「影像閘」用來控制哪些影像行是有效的:

        • 當「影像閘」訊號處於有效狀態時,系統會接受傳入的行。(參見圖中,例如第 n+8 行和 n+9 行。)

        • 當 Image Gate 訊號未處於有效狀態時,傳入的行將被忽略。(參見圖示,例如第 n+3 行。)

        • 在「影像閘」訊號處於有效狀態時開始的每一行皆為有效。 (參見圖示:n+1、n+2、n+4、n+5、n+6、n+8 及 n+9 皆為有效。)

          如果「影像閘極」的下降沿發生在最後一行所有資料皆未被擷取之前, 該行仍被視為有效,並會被完整擷取。(參見圖中:n+2 和 n+6)

        • 總是有整條生產線正在進行移交。

        • 當影像閘門處於關閉狀態時開始的每一條線均屬無效。 (參見圖示:第 n 條線與第 n+7 條線無效,第 n+4 條線有效。)

        • 行尾 (EoL) 和幀尾 (EoF) 會在新行開始之前直接產生, 或於影像閘的下降沿產生。

          新行開始前的 EoL:若某行訊號的下降沿發生在開啟的影像閘內, 且影像閘涵蓋了下一行的起始部分, 則行尾信號將直接在下一行的上升沿之前產生。(參見圖中:n+1、n+4、n+5 及 n+8。)

          新行開始前立即產生 EoL 與 EoF:若影像閘的下降沿出現在一行下降沿之前, 則 EoL 與 EoF 將在下一行的上升沿之前立即產生。(參見圖:影像 m 與影像 m+1。)

          影像閘的下降沿處同時發生 EoL 與 EoF:若某行訊號的下降沿發生於開啟的影像閘內, 且影像閘的下降沿發生在下一行的上升沿之前, 則 EoL 與 EoF 將在影像閘的下降沿之後直接產生。(參見圖:影像 m+2。)

      當參數MaxGatedHeight設定為「Restricted」時,Mode ExternSW_Gate 的行為

      如果參數 MaxGatedHeight 若設定為「受限」,其行為與上述針對 MaxGatedHeight 其值為「無限制」, 但有以下例外情況:

      • 只要影像閘門處於開啟狀態,系統便會將行資料追加至最大影像高度YLength 為止。 隨後的所有行資料將被省略,直至影像閘門訊號出現下一個上升沿為止。

      • 若在追加 YLength 行之前發生了 Image Gate 訊號的下降沿: Image Gate 訊號的下降沿決定了影像的高度, 即使該影像的高度未達 YLength 亦然。 (有關影像高度的更多資訊,請參閱參數MaxGatedHeight。)

      • 下方的範例(圖)顯示了當MaxGatedHeight= restricted 且YLength= 3 時的行為。

ImgTrgInSource
Type 動態/靜態讀寫參數
Default InSignal0
Range {InSignal0、InSignal1、InSignal2、InSignal3、InSignal4、InSignal5、InSignal6、InSignal7}

此參數指定用於觸發影像擷取的訊號來源。此設定僅在 ImgTriggerMode 設定為 ExternSw_Trigger 或 ExternSw_Gate 時才適用。

ImgTrgInPolarity
Type 動態讀取/寫入參數
Default 低活躍度
Range {低活躍度, 高活躍度}

此參數用於定義外部輸入觸發訊號的極性。

ImgTrgDelay
Type 動態讀取/寫入參數
Default 0
Range {0, 4095}

此參數會將影像觸發訊號延遲指定數量的影像行。

FlashEnable
Type 動態讀取/寫入參數
Default OFF
Range {OFF, ON}

啟用或停用閃光輸出。 閃光訊號的脈衝寬度等於一個行週期。

閃光極性
Type 動態/靜態讀寫參數
Default 低活躍度
Range {低活躍度, 高活躍度}

此參數用於定義所產生之 Flash 訊號的極性。

FlashDelay
Type 動態/靜態讀寫參數
Default 0
Range {0, 4095}

此參數指定生成閃光訊號時,相對於外部觸發 輸入的延遲行數。 因此,可將閃光與外部觸發輸入同步。

閃光訊號的脈衝寬度等於一個行週期。

SoftwareTrgPulse
Type 動態/靜態寫入參數
Default
Range {1}

將此參數設定為 1 將產生軟體觸發訊號。此設定僅在 TriggerMode 設定為外部 觸發模式,且 ImgTrgInSource 設定為 SoftwareTrigger 時才適用。

SoftwareTrgInput
Type 動態/靜態寫入參數
Default
Range {0, 1}

透過此參數,可針對影像觸發模式 ExternSw_Gate 建立一個軟體閘門。

ImgTrgIsBusy
Type 動態/靜態讀取參數
Default 0
Range {0, 1}

ImgTrgIsBusy 參數可讓軟體讀取影像觸發器的忙碌狀態。 若處於忙碌狀態,則此參數會設定為 1,以表示正在進行影像擷取。 若設定為 0,則表示操作者目前未處於忙碌狀態。

CC1輸出
Type 動態/靜態寫入參數
Default Exsync
Range {Exsync、ExsyncInvert、Hdsync、HdsyncInvert、Flash、FlashInvert、Gnd、Vcc}

此參數指定 CameraLink 纜線的 CC1 線路上可用的訊號。

CC2output
Type 動態/靜態寫入參數
Default Exsync
Range {Exsync、ExsyncInvert、Hdsync、HdsyncInvert、Flash、FlashInvert、Gnd、Vcc}

此參數指定 CameraLink 纜線 CC2 線路上可用的訊號。

CC3output
Type 動態/靜態寫入參數
Default Exsync
Range {Exsync、ExsyncInvert、Hdsync、HdsyncInvert、Flash、FlashInvert、Gnd、Vcc}

此參數指定 CameraLink 纜線的 CC3 線上可用的訊號。

CC4output
Type 動態/靜態寫入參數
Default Exsync
Range {Exsync、ExsyncInvert、Hdsync、HdsyncInvert、Flash、FlashInvert、Gnd、Vcc}

此參數指定 CameraLink 纜線的 CC4 線路上可用的訊號。

ImgTrgDebouncingMaxTime
Type 靜態寫入參數
Default 65.520 美分
Range [0.016, 1000000] 微秒

此參數指定 ImgTrgDebouncingTime 參數的最大時間。最大時間越短, 實現去抖動計時器所需的 FPGA 資源就越少。

ImgTrgDebouncingTime
Type 動態/靜態寫入參數
Default 0.112 微秒
Range [0.016, ImgTrgDebouncingMaxTime] 微秒

此參數指定輸入影像觸發訊號必須保持相同值的時間長度,才能被偵測為 有效訊號。在去抖動時間內發生的快速訊號變化將會被過濾掉。

LineTrgDebouncingMaxTime
Type 靜態寫入參數
Default 65.520 美分
Range [0.016, 1000000] 微秒

此參數指定 LineTrgDebouncingTime 參數的最大時間。最大時間越短, 實現去抖動計時器所需的 FPGA 資源就越少。

LineTrgDebouncingTime
Type 動態/靜態寫入參數
Default 0.112 微秒
Range [0.016, ImgTrgDebouncingMaxTime] 微秒

此參數指定輸入線觸發訊號必須保持相同值的去抖動時間,才能被偵測為 該訊號。在去抖動時間內發生的快速訊號變化將被過濾掉。

Examples of Use

以下範例展示了 TrgPortLine 運算子的使用方式: